package classes;

public class PedidoDeAmizade {
	private Usuario usuarioPediu, usuarioPedido;
	private EstadoAmizade estadoPediu, estadoPedido;
	private String mensagem;
	
	public PedidoDeAmizade(Usuario usuarioPediu,Usuario usuarioPedido, String Mensagem){
		this.mensagem = "";
		this.usuarioPediu = usuarioPediu;
		this.usuarioPedido = usuarioPedido;
		this.estadoPediu = estadoPediu.ACEITA;
		this.estadoPedido = estadoPedido.PENDENTE;
	}
	
	public PedidoDeAmizade(Usuario usuarioPediu,Usuario usuarioPedido){
		this.mensagem = "";
		this.usuarioPediu = usuarioPediu;
		this.usuarioPedido = usuarioPedido;
		this.estadoPediu = estadoPediu.ACEITA;
		this.estadoPedido = estadoPedido.PENDENTE;
	}
	
	public EstadoAmizade getEstadoPedido() {
		return estadoPedido;
	}

	public void VerificaAmizade(){
		
	}
	
	public Usuario getUsuarioPedido() {
		return usuarioPedido;
	}

	public static void main(String args[]) throws Exception{
		Endereco e1 = new Endereco("Rua teste", "123", "Bairro teste", "Cidade teste", "Estado teste", "Complemento teste");
		Endereco e2 = new Endereco("Novo rua teste", "456", "Novo bairro teste", "Nova cidade teste", "Novo estado teste", "Novo complemento teste");
		Usuario u1 = new Usuario("Usuario teste","Login teste",e1);
		Usuario u2 = new Usuario("Usuario teste2","Login teste2",e2);
		PedidoDeAmizade p1 = new PedidoDeAmizade(u1, u2);
	}
	
	@Override
	public boolean equals(Object objeto) {
		if (!(objeto instanceof PedidoDeAmizade))
			return false;
		PedidoDeAmizade novoPedido = (PedidoDeAmizade) objeto;
		if (this.getUsuarioPediu().getLogin().equals(novoPedido.getUsuarioPediu().getLogin()) && this.getUsuarioPedido().getLogin().equals(novoPedido.getUsuarioPedido().getLogin())) {
			return true;

		} else {
			return false;
		}

	}
	
	@Override
	public String toString(){
		return ("Pediu: " + this.usuarioPediu.getLogin() + "    //   Pedido: " + this.usuarioPedido.getNome());
		
	}

	public void setEstadoPedido(EstadoAmizade estadoPedido) {
		this.estadoPedido = estadoPedido;
	}

	public Usuario getUsuarioPediu() {
		return usuarioPediu;
	}
}
